package cellnetDemo

//import (
//	"github.com/davyxu/cellnet"
//	"github.com/davyxu/cellnet/peer"
//	_ "github.com/davyxu/cellnet/peer/tcp"
//	"github.com/davyxu/cellnet/proc"
//	_ "github.com/davyxu/cellnet/proc/tcp"
//)
//
//// cellnet是一个组件化、高扩展性、高性能的开源服务器网络库
//
//// 模拟客户端逻辑
//func client() {
//
//	// 例子专用的完成标记
//	done := make(chan struct{})
//
//	// 创建客户端的事件处理队列
//	queue := cellnet.NewEventQueue()
//
//	// 创建客户端的连接器
//	peerIns := peer.NewGenericPeer("tcp.Connector", "client", peerAddress, queue)
//
//	// 将客户端连接器Peer与tcp.ltv处理器绑定，并设置接收事件回调
//	proc.BindProcessorHandler(peerIns, "tcp.ltv", func(ev cellnet.Event) {
//
//		switch msg := ev.Message().(type) {
//		case *cellnet.SessionConnected: // 已经连接上
//			fmt.Println("client connected")
//			ev.Session().Send(&TestEchoACK{
//				Msg:   "hello",
//				Value: 1234,
//			})
//		case *TestEchoACK: //收到服务器发送的消息
//
//			fmt.Printf("client recv %+v\n", msg)
//
//			// 完成操作
//			done <- struct{}{}
//
//		case *cellnet.SessionClosed:
//			fmt.Println("client closed")
//		}
//	})
//
//	// 开启客户端Peer
//	peerIns.Start()
//
//	// 开启客户端队列处理
//	queue.StartLoop()
//
//	// 等待客户端收到消息
//	<-done
//}
